package java44th.group.mapper;

import java.util.LinkedList;
import java.util.List;
import java44th.group.bean.po.MarketCouponUser;
import java44th.group.bean.po.MarketCouponUserExample;
import java44th.group.bean.wx.bo.coupon.TimeData;
import java44th.group.bean.wx.vo.coupon.CouponsUserListVo;
import org.apache.ibatis.annotations.Param;

public interface MarketCouponUserMapper {
    long countByExample(MarketCouponUserExample example);

    int deleteByExample(MarketCouponUserExample example);

    int deleteByPrimaryKey(Integer id);

    int insert(MarketCouponUser row);

    int insertSelective(MarketCouponUser row);

    List<MarketCouponUser> selectByExample(MarketCouponUserExample example);

    MarketCouponUser selectByPrimaryKey(Integer id);

    int updateByExampleSelective(@Param("row") MarketCouponUser row, @Param("example") MarketCouponUserExample example);

    int updateByExample(@Param("row") MarketCouponUser row, @Param("example") MarketCouponUserExample example);

    int updateByPrimaryKeySelective(MarketCouponUser row);

    int updateByPrimaryKey(MarketCouponUser row);

    LinkedList<CouponsUserListVo> selectCouponUserByStatus(@Param("mcu") MarketCouponUser marketCouponUser);

    Integer countByUserIdAndStatus(@Param("id") Integer id,@Param("status") Integer status);

    LinkedList<TimeData> selectByUserId(Integer userId);
    //根据用户的id去跟新状态码
    int updateByPrimaryKeySelective2(MarketCouponUser row);

    Integer selectUserCouponCountByCouponId(Integer couponId);

}